home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / finger_akfingerd.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  84 lines

  1. #
  2. # This script was written by Andrew Hintz <http://guh.nu>
  3. # (It is based on Renaud's template.)
  4. #
  5. # See the Nessus Scripts License for details
  6. #
  7.  
  8. if(description)
  9. {
  10.  script_id(11193);
  11.  script_bugtraq_id(6323);
  12.  script_version ("$Revision: 1.3 $");
  13.  
  14.  name["english"] = "akfingerd";
  15.  script_name(english:name["english"]);
  16.  desc["english"] = "
  17. The remote finger service appears to vulnerable to a remote
  18. attack which can disrupt the service of the finger daemon.
  19. This denial of service does not effect other services that
  20. may be running on the remote computer, only the finger
  21. service can be disrupted.
  22.  
  23. akfingerd version 0.5 or earlier is running on the remote
  24. host.  This daemon has a history of security problems, 
  25. make sure that you are running the latest version of 
  26. akfingerd.
  27.  
  28. Versions 0.5 and earlier of akfingerd are vulnerable to a
  29. remote denial of service attack.  They are also vulnerable
  30. to several local attacks.
  31.  
  32. Risk factor : Medium";
  33.  
  34.  script_description(english:desc["english"]);
  35.  
  36.  summary["english"] = "Finger daemon DoS";
  37.  script_summary(english:summary["english"]);
  38.  
  39.  script_category(ACT_GATHER_INFO); #This script should not disrupt the machine at all
  40.  
  41.  
  42.  script_copyright(english:"This script is Copyright (C) 2002 Andrew Hintz");
  43.  family["english"] = "Finger abuses";
  44.  script_family(english:family["english"]);
  45.  script_dependencie("find_service.nes");
  46.  script_require_ports("Services/finger", 79);
  47.  exit(0);
  48. }
  49.  
  50. #
  51. # The script code starts here
  52. #
  53.  
  54. port = get_kb_item("Services/finger");
  55. if(!port)port = 79;
  56. if(get_port_state(port))
  57. {
  58.  soc = open_sock_tcp(port);
  59.  if(soc)
  60.  {
  61.   buf = string("nessusIs4Scanning2You@127.0.0.1@127.0.0.1\r\n"); #send request for forwarded finger query
  62.   send(socket:soc, data:buf);
  63.   data = recv(socket:soc, length:96);
  64.   close(soc);
  65.   if("Forwarding is not supported." >< data) #check for forwarding-denial message used by akfingerd
  66.   {
  67.    soc1 = open_sock_tcp(port); #start a connection and leave it open
  68.    if(soc1)
  69.    {
  70.     soc2 = open_sock_tcp(port); #start another connection and issue a request on it
  71.     if(soc2)
  72.     {
  73.      send(socket:soc2, data:buf);
  74.      data2 = recv(socket:soc2, length:96);
  75.      if(!data2) security_warning(port);  #akfingerd won't send a reply on second connection while the first is still open
  76.      close(soc2);
  77.     }
  78.     else security_warning(port);
  79.     close(soc1);
  80.    }
  81.   }
  82.  }
  83. }
  84.